import axios from 'axios';
import config from "@/config";
// import { reject } from "core-js/fn/promise";
const baseUrl = process.env.NODE_ENV === 'development' ? config.baseUrl.dev : config.baseUrl.pro;

class HttpRequest{
    constructor(baseUrl){
        this.baseUrl = baseUrl
    }
   getInsideConfig(){
    const config ={
        baseUrl:this.baseUrl,
        herder:{}
    }
    return config
   }
   interceptors(instance){
    instance.interceptors.request.use(function(config){
        return config
    },function(error){
        return Promise.reject(error);
    });
    instance.interceptors.response.use(function(response){
        console.log('这里是拦截成功的信息');
        console.log(response,'response')
        return response
    },function(error){
        console.log('这里是拦截错误的信息');
        console.log(error,'response');
        return Promise.reject(error);
    })
   }

   request(options){
        const instance =axios.create()
        options = {...this.getInsideConfig(),...options};
        this.interceptors(instance);

        return instance(options);
   }
}
export default new HttpRequest(baseUrl)